using System;
using System.Collections.Generic;

namespace SharpCommunications.Serialization
{
    public interface ISharpSerializer
    {
        string Serialize<T>(T obj, Type knownType);
        string Serialize<T>(T obj, List<Type> knownTypes = null);
        T Deserialize<T>(string data, Type knownType);
        T Deserialize<T>(string data, List<Type> knownTypes = null);
    }
}